part of '../repository.dart';

const _kLexicalItemTypeKey = 'type';
const _kLexicalItemIdKey = 'id';
const _kLexicalItemTitleKey = 'title';
const _kLexicalItemTranslationsKey = 'translations';
const _kLexicalItemTranscriptionsKey = 'transcriptions';
const _kLexicalItemDefinitionKey = 'definition';
const _kLexicalItemUseCasesKey = 'use_cases';
const _kLexicalItemImageIdKey = 'image_id';

sealed class _LexicalItemDto {
  String get type;

  String get id;

  String get title;

  BuiltMap<_LearningLocaleDto, String> get translationDtoMap;

  BuiltList<_UseCaseDto> get useCaseDtos;

  BuiltMap<_DialectDto, String> get transcriptionDtoMap;

  String get definition;

  String? get imageId;

  Map<String, dynamic> toJson();

  LexicalItem toEntity();
}
